;Lista* constructor_lista();

extern malloc

global constructor_lista

section .text
	; en eax se va a guardar la direccion de memoria donde se encuentra el puntero al 1er
	;elemento de la lista. Dicho puntero tiene valor cero. 
	
constructor_lista:
	push ebp
	mov ebp, esp
		
	mov edx, 4     ;espacio en bytes que ocupa el puntero en memoria
	push edx       ; guardo el valor en esi
	call malloc    ;reservo memoria
	add esp, 4     ; libero la pila del esi
	
	cmp eax, 0      ; mem ok?
	je fin
	
	mov dword [eax], 0    ; apunto el cursor a cero
	
fin:
	pop ebp
	ret
